package com.easylinkin.linkappapi.linkage.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 联动执行日志
 * </p>
 *
 * @author TongJie
 * @since 2020-06-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("linkapp_linkage_log")
public class LinkageLog extends Model<LinkageLog> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId("id")
    private String id;

//    /**
//     * 配置id
//     */
//    @TableField("linkage_config_id")
//    private String linkageConfigId;

    /**
     * 规则引擎id
     */
    @TableField("rule_engine_id")
    private String ruleEngineId;

    /**
     * 租户id
     */
    @TableField("tenant_id")
    private String tenantId;

    /**
     * 空间id
     */
    @TableField("space_id")
    private String spaceId;

    /**
     * 类别：1：设备状态报文触发类，2：定时任务触发类
     */
    @TableField("type")
    private Integer type;

    /**
     * 0-失败，1-成功
     */
    @TableField("state")
    private Boolean state;

    /**
     * 设备编号
     */
    @TableField("device_code")
    private String deviceCode;

    /**
     * 返回结果码 200 成功 500 失败
     */
    @TableField("result_code")
    private String resultCode;

    /**
     * 结果信息
     */
    @TableField("result_msg")
    private String resultMsg;

    /**
     * 请求id
     */
    @TableField("request_id")
    private String requestId;

    /**
     * 发送时间
     */
    @TableField("send_time")
    private Date sendTime;

    /**
     * 保存时间
     */
    @TableField("save_time")
    private Date saveTime;


    /**
     * 创建时间起始（查询条件）
     */
    @TableField(exist = false)
    private String queryTimeStart;

    /**
     * 创建时间结束（查询条件）
     */
    @TableField(exist = false)
    private String queryTimeEnd;


    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
